package org.plex.task;

import com.adobe.idp.Document;

public interface FormInstance extends FormInstanceBase {

	static final short FORM_DATA_TYPE = 1;
	static final short DOCUMENT_DATA_TYPE = 2;
	static final String DOCUMENT_PERSIST_PRERIX = "_wftask";

	short getDataTypeIn();

	short getDataTypeOut();

	short getCurrentDataType();

	Document getDocument();

	void setDocument(Document document);

	long getFormInstanceId();

	void setFormInstanceId(long formInstanceId);

	short getAssignedQueueType();

	String getAssignedPrincipalId();

	short getTaskStatus();

	boolean isDataEmpty();

	boolean isItemUpdated();

	boolean isItemUpdateRequired();

	void setUseTaskRoute(boolean userTaskRoutes);

	boolean isUseTaskRoutes();

	void setActionRequired(boolean isActionRequired);

	boolean isActionRequired();

	boolean isDocumentForm();
}
